『Web APIの設計』
https://gyazo.com/f9382e791cd5356e3a853ab8248b326f
2020/8/26
■第1部 APIデザインの基礎
第1章 APIデザインとは何か
1.1 APIとは何か
1.2 APIの設計はなぜ重要か
1.3 APIの設計を構成する要素
1.4 まとめ
第2章 ユーザーを意識したAPIを設計する
2.1 身近なユーザーインターフェイスを設計するための正しい視点
2.2 ソフトウェアのインターフェイスを設計する
2.3 APIのゴールを洗い出す
2.4 APIの設計時にプロバイダの視点を回避する
2.5 まとめ
第3章 プログラミングインターフェイスを設計する
3.1 REST API
3.2 APIのゴールをREST APIに置き換える
3.3 APIのデータを設計する
3.4 設計上の課題に直面したときは妥協点を探る
3.5 RESTはなぜどのAPIの設計にとっても重要なのか
3.6 まとめ
第4章 API記述フォーマットを使ってAPIを記述する
4.1 API記述フォーマットとは何か
4.2 APIのリソースとアクションをOASで記述する
4.3 OASとJSON Schemaを使ってAPIデータを記述する
4.4 OASを使ってAPIを効率よく記述する
4.5 まとめ
■第2部 ユーザブルなAPIの設計
第5章 単純明快なAPIを設計する
5.1 単純明快な表現を設計する
5.2 単純明快なインタラクションを設計する
5.3 単純明快なフローを設計する
5.4 まとめ
第6章 予測可能なAPIを設計する
6.1 一貫性
6.2 適応性
6.3 発見可能性
6.4 まとめ
第7章 うまく整理された簡潔なAPIを設計する
7.1 APIを整理する
7.2 APIのサイジング
7.3 まとめ
■第3部 コンテキストに応じたAPIデザイン
第8章 セキュアなAPIを設計する
8.1 APIのセキュリティ
8.2 アクセス制御を可能にするためにAPIを分割する
8.3 アクセス制御を念頭に置いて設計する
8.4 センシティブな内容に対処する
8.5 まとめ
第9章 APIの設計を進化させる
9.1 APIの進化を設計する
9.2 APIのバージョニング
9.3 拡張性を念頭に置いてAPIを設計する
9.4 まとめ
第10章 ネットワーク効率のよいAPIを設計する
10.1 ネットワーク通信の懸案事項
10.2 プロトコルレベルでのネットワーク通信の効率化
10.3 設計レベルでのネットワーク通信の効率化
10.4 まとめ
第11章 コンテキストに基づいてAPIを設計する
11.1 ゴールとデータの性質に通信を適応させる
11.2 完全なコンテキストを観察する
11.3 コンテキストに従ってAPIスタイルを選ぶ
11.4 まとめ
第12章 APIを文書化する
12.1 リファレンスマニュアルを作成する
12.2 ユーザーガイドを作成する
12.3 実装者に適切な情報を提供する
12.4 進化と終了を文書化する
12.5 まとめ
第13章 APIを成長させる
13.1 APIのライフサイクル
13.2 APIの設計ガイドラインを作成する
13.3 APIのレビュー
13.4 情報提供と共有
13.5 まとめ